.TH std::experimental::simd 3 "2024.06.10" "http://cppreference.com" "C++ Standard Libary"
.SH NAME
std::experimental::simd \- std::experimental::simd

.SH Synopsis
   Defined in header <experimental/simd>
   template< class T, class Abi = simd_abi::compatible<T> >  (parallelism TS v2)
   class simd;

   The class template simd is a data-parallel type. The width of a given simd
   instantiation is a constant expression, determined by the template parameters.

   An ABI tag is a type in the simd_abi namespace that indicates a choice of size and
   binary representation for objects of data-parallel type.

.SH Template parameters

   T   - element type; an arithmetic type other than bool
   Abi - tag type used to determine the number of elements and storage

   Helper alias templates

   template< class T, int N >
   using fixed_size_simd = std::experimental::simd<T,
   std::experimental::simd_abi::fixed_size<N>>;
   template< class T >
   using native_simd = std::experimental::simd<T,
   std::experimental::simd_abi::native<T>>;

.SH Member types

   Member type Definition
   value_type  T
   reference   implementation-defined
   mask_type   simd_mask<T, Abi>
   abi_type    Abi

.SH Member functions

   constructor                  constructs a simd object
   (parallelism TS v2)          \fI(public member function)\fP
   copy_from                    loads simd elements from contiguous memory
   (parallelism TS v2)          \fI(public member function)\fP
   copy_to                      stores simd elements to contiguous memory
   (parallelism TS v2)          \fI(public member function)\fP
   operator[]                   accesses specified element
   (parallelism TS v2)          \fI(public member function)\fP
   operator++                   element-wise increment and decrement
   operator--                   \fI(public member function)\fP
   (parallelism TS v2)
   operator!
   operator~                    element-wise unary operators
   operator+                    \fI(public member function)\fP
   operator-
   (parallelism TS v2)
   size                         returns the width / number of elements
   \fB[static]\fP (parallelism TS v2) \fI(public static member function)\fP

.SH Non-member functions

   operator+
   operator-
   operator*
   operator/
   operator%           element-wise binary operators
   operator&           \fI(function)\fP
   operator|
   operator^
   operator<<
   operator>>
   (parallelism TS v2)
   operator+=
   operator-=
   operator*=
   operator/=
   operator%=          element-wise compound binary operators
   operator&=          \fI(function)\fP
   operator|=
   operator^=
   operator<<=
   operator>>=
   (parallelism TS v2)
   operator==
   operator!=
   operator>=          element-wise relational operators
   operator<=          \fI(function)\fP
   operator>
   operator<
   (parallelism TS v2)

.SH Example

    This section is incomplete
    Reason: no example

.SH See also

   simd_mask           data-parallel type with the element type bool
   (parallelism TS v2) \fI(class template)\fP
   valarray            numeric arrays, array masks and array slices
                       \fI(class template)\fP

.SH Category:
     * Todo no example
